为了满足行云管家私有部署用户对高可用方案的需求,通过与HA软件配合方式,让行云管家私有部署以高可用方式部署(仅适用于企业版或运营版)。本文中提到的HA软件,均以SkybilityHA为例(了解SkybilityHA)。由于HA产品的差异性,如果用户需要以其它HA产品进行部署,请自行查阅相关文档,行云管家不提供相关的技术支持,同时无法保证在其它HA产品下的兼容性 。

行云管家与SkybilityHA作高可用部署时,对于在本地服务器部署,支持两种方式:1、共享存储方式,以共享存储作为运行时数据存储载体;2、DRBD方式,运行时数据同时存储在两台主机的磁盘上,由DRBD保持两台主机磁盘的数据同步。还可以使用阿里云服务器进行高可用部署,以EIP作为应用IP,由DRBD保持两台主机磁盘的数据同步。

通用下载链接

(1)操作系统:

(2)HA安装包:

(3)行云管家安装包:

一、 共享存储方式安装

安装前,请按下述要求(硬件要求、网络要求、操作系统要求、相关文件准备、资源准备)进行环境准备;

1.1、硬件要求

(1)需要两台物理机或虚拟机服务器,两台服务器的推荐至少使用8核CPU和16G内存;磁盘空间初始最低要求为:根“/”分区建议至少有100GB的空闲空间;

(2)要求提供1TB的外部存储,并支持同时挂载到上述两台物理机或虚拟机服务器上。要求的共享存储必须为块设备,是SAN存储,例如IBM、SUN、EMC、HATIACHI 等FC或iscsi存储,而不能是NAS(网络区域存储文件系统);

(3)依据设备数和会话数要求适当提高硬件配置,依据网盘以及后续审计日志存储要求,适当增加外部存储空间。

1.2、操作系统要求

(1)本安装包仅能安装到CentOS7(7.4-7.8)操作系统。操作系统要求使用全新原生的ISO进行安装,安装时可以是最小安装,硬盘分区需做自定义分区,分为:1024M挂载到 /boot 分区、4096M作为交换(Swap)分区、剩余所有空间挂载到根“/”分区;

(2)本安装包的安装必须由root用户执行。

(3)时间:请确保服务器系统时间正确,可以参考CentOS7时间设置

1.3、网络要求

(1)上述两台服务器均需要对外开放80端口及9099端口访问,两台服务器之间需要开放3388端口访问;

(2)如果需要导入云主机,需开放外网出口的访问,并正确设置DNS;

(3)上述两台服务器需要能够相互访问。

1.4、资源准备

(1)需要获取当前服务器所在网络的默认网关IP地址,该IP地址将用作HA的仲裁IP地址;

(2)假设按上述要求准备的两台服务器分别为node1和node2,需要获知node1和node2服务器的IP地址;

(3)需要获知将用于访问行云管家的IP地址。该IP地址将作为浮动IP地址,交由SkybilityHA配置于上述node1或node2服务器中(行云管家相关服务运行所在的服务器);

(4)需要获知用于访问行云管家的IP地址将要配置到两台服务器哪一个网卡接口上,并获知该网卡接口的名称;

(5)准备好外部存储,并在安装行云管家及SkybilityHA前连接配置到上述node1和node2服务器中。 在执行本文档后续的操作之前必须做好外部存储准备,并已经配置连接到上述两台服务器中。

为了方便后续说明,我们假设上述要准备的资源如下表:

资源 内容 用途描述
默认网关 192.168.1.1 当前网段的默认网关IP地址,将用作HA的仲裁节点IP地址
node1_IP 192.168.1.10 node1(节点1)的IP地址,将用作两个HA节点间的心跳IP地址
node2_IP 192.168.1.11 node2(节点2)的IP地址,将用作两个HA节点间的心跳IP地址
APP_IP 192.168.1.88 访问行云管家所使用的IP地址,作为浮动IP地址由SkybilityHA配置于node1或node2上
网卡接口名称 eth0 访问行云管家所用的IP地址将会由SkybilityHA配置到该网卡接口上
存储名称 /dev/sdc 存储被接入到node1及node2服务器后,在服务器中的名称,可通过"fdisk -l"命令查询

1.5、相关文件准备

在node1服务器的 /opt/ 目录下载或准备好以下文件:

(1)准备好CentOS7(7.4-7.8)操作系统原生ISO文件(必须与两台主机的操作系统版本一致的):CentOS7.8下载链接

(2)准备好SkybilityHA的ISO安装文件及其对应的md5sum文件:ha-2.8.0-14.3.x86_64.isoha-2.8.0-14.3.x86_64.iso.md5sum

(3)准备好最新的行云管家安装包及对应MD5文件

1.6、安装

安装过程为一键式安装,为实现一键式安装,需要在执行安装前做好两台服务器间的无密码登录,在安装完毕后,需手工放置SkybilityHA的有效license并启动SkybilityHA。

(1)做两台服务器间的无密码登录

a)在node1服务器上执行以下三行命令,实现可以在执行命令的服务器上无密码SSH登录至node1服务器和node2服务器(注意:下述第二行命令中的192.168.1.10为node1服务器的IP地址,第三行命令中的192.168.1.11为node2服务器的IP地址,执行命令前需要根据实际情况指定。在执行第二及第三行命令时,会提示是否继续连接,此时请输入“yes”并按回车键,接着会要求输入服务器的root账号的密码,请输入root账号的密码后按回车,在输入root账号的密码时屏幕上不会有任何显示

ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.10
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.11

b)在node2服务器上执行以下三行命令,实现可以在执行命令的服务器上无密码SSH登录至node1服务器和node2服务器(注意:下述第二行命令中的192.168.1.10为node1服务器的IP地址,第三行命令中的192.168.1.11为node2服务器的IP地址,执行命令前需要根据实际情况指定。在执行第二及第三行命令时,会提示是否继续连接,此时请输入“yes”并按回车键,接着会要求输入服务器的root账号的密码,请输入root账号的密码后按回车,在输入root账号的密码时屏幕上不会有任何显示

ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.10
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.11

(2)执行安装

a)以root账户登录至node1服务器

b)在node1服务器上执行以下命令,解压行云管家安装包文件(注意:下述第二行命令中的cloudguanjia_cmp_install_v4.16_0227.tar.gz为行云管家安装包文件的文件名,执行命令前需要根据实际情况指定

cd /opt
tar zxvf cloudguanjia_cmp_install_v4.16_0227.tar.gz

c)在node1服务器上执行以下命令,进入行云管家安装包目录并安装(注意:下述第二行命令中的参数需要与前述准备的资源一致,其中192.168.1.1为默认网关IP地址,192.168.1.88为访问行云管家所使用的应用IP地址,192.168.1.10为node1服务器的IP地址,192.168.1.11为node2服务器的IP地址,eth0为应用访问IP地址将要设置于其上的网口名称,/dev/sdc为存储名称,执行命令前需要根据实际情况指定

cd /opt/cloudguanjia_cmp_install
./install.sh ha 192.168.1.1 192.168.1.88 192.168.1.10 192.168.1.11 eth0 /dev/sdc

上述命令在执行时,会校验两台服务器的连通性(包括校验两台服务器间是否可以无密码登录)、安装包的正确性、各个IP地址的正确性、网口名称的正确性以及存储名称的正确性。

上述命令执行后,安装操作将在后台执行,安装操作日志位于/cloudbility_install_logs/cloudguanjia_install_xxxxxxxxxxxxxx.log ,日志也将在当前执行命令的终端窗口显示。

待上述命令执行完毕,即可完成SkybilityHA和行云管家的安装。

d)将有效的SkybilityHA许可文件(license)分别拷贝到node1服务器和node2服务器的 /opt/ha/lic/ 目录,完成SkybilityHA License放置。

e)在node1和node2服务器分别执行以下命令,启动SkybilityHA,并由SkybilityHA将行云管家启动起来。

/opt/ha/bin/hadaemons start

SkybilityHA管理控制台的访问地址为 http://node1_IP:9099 或 http://node2_IP:9099 ,用户名为 admin ,密码为 Abc@12345

SkybilityHA启动后,将会自动把行云管家启动起来,可以通过浏览器以 http://APP_IP 来访问行云管家。

请参考 行云管家管理控制台初始化配置 对行云管家进行初始化配置。

二、DRBD方式安装

安装前,请按下述几项要求进行环境准备;

2.1、硬件要求

(1)需要两台物理机或虚拟机服务器,两台服务器的推荐至少使用8核CPU和16G内存;磁盘空间初始最低要求为:根“/”分区建议至少有100GB的空闲空间;

(2)要求为两台主机分别提供1TB的存储(硬盘)作为数据盘,并分别挂载到两台主机上,请注意,不要做对该数据盘做分区或格式化等操作;

(3)依据设备数和会话并发数等要求适当提高硬件配置(CPU内存磁盘等),依据网盘以及后续审计日志存储要求,适当增加外部存储空间。

2.2、操作系统要求

(1)本安装包仅能安装到CentOS7(7.4-7.8)操作系统。操作系统要求使用全新原生的ISO进行安装,安装时可以是最小安装,硬盘分区需做自定义分区,分为:1024M挂载到 /boot 分区、4096M作为交换(Swap)分区、剩余所有空间挂载到根“/”分区;

(2)本安装包的安装必须由root用户执行。

(3)时间:请确保服务器系统时间正确,可以参考CentOS7时间设置

2.3、网络要求

(1)上述两台主机均需要对外开放80端口及9099端口访问,两台主机之间需要开放22端口(供root账号进行ssh远程访问)、3388端口及7700端口访问;

(2)如果需要导入云主机,需开放外网出口的访问,并正确设置DNS;

(3)上述两台服务器需要能够相互访问,并且两台主机之间的连接带宽在1000M以上。

2.4、资源准备

(1)需要获取当前服务器所在网络的默认网关IP地址,该IP地址将用作HA的仲裁IP地址;

(2)假设按上述要求准备的两台服务器分别为node1和node2,需要获知node1和node2服务器的IP地址;

(3)需要获知将用于访问行云管家的IP地址。该IP地址将作为浮动IP地址,交由SkybilityHA配置于上述node1或node2服务器中(行云管家相关服务运行所在的服务器);

(4)需要获知用于访问行云管家的IP地址将要配置到两台服务器哪一个网卡接口上,并获知该网卡接口的名称;

(5)为两台主机分别准备好存储,并在安装行云管家及SkybilityHA前分别配置挂载到上述node1和node2主机中,可通过在主机中执行 fdisk -l 命令查看到。 在执行本文档后续的操作之前必须做好存储准备,并已经分别配置挂载到上述两台主机中

为了方便后续说明,我们假设上述要准备的资源如下表:

资源 内容 用途描述
默认网关 192.168.1.1 当前网段的默认网关IP地址,将用作HA的仲裁节点IP地址
node1_IP 192.168.1.10 node1(节点1)的IP地址,将用作两个HA节点间的心跳IP地址
node2_IP 192.168.1.11 node2(节点2)的IP地址,将用作两个HA节点间的心跳IP地址
APP_IP 192.168.1.88 访问行云管家所使用的IP地址,作为浮动IP地址由SkybilityHA配置于node1或node2上
网卡接口名称 eth0 访问行云管家所用的IP地址将会由SkybilityHA配置到该网卡接口上
存储名称 /dev/sdc 存储被接入到node1及node2服务器后,在服务器中的名称,可通过"fdisk -l"命令查询

2.5、相关文件准备

在node1服务器的 /opt/ 目录下载或准备好以下文件:

(1)准备好CentOS7(7.4-7.8)操作系统原生ISO文件(必须与两台主机的操作系统版本一致的):CentOS7.8下载链接

(2)准备好SkybilityHA的ISO安装文件及其对应的md5sum文件:ha-2.8.0-14.3.x86_64.isoha-2.8.0-14.3.x86_64.iso.md5sum

(3)准备好最新的行云管家安装包及对应MD5文件

2.6、安装

安装过程为一键式安装,为实现一键式安装,需要在执行安装前做好两台服务器间的无密码登录,在安装完毕后,需手工放置SkybilityHA的有效license并启动SkybilityHA。

(1)做两台服务器间的无密码登录

a)在node1服务器上执行以下三行命令,实现可以在执行命令的服务器上无密码SSH登录至node1服务器和node2服务器(注意:下述第二行命令中的192.168.1.10为node1服务器的IP地址,第三行命令中的192.168.1.11为node2服务器的IP地址,执行命令前需要根据实际情况指定。在执行第二及第三行命令时,会提示是否继续连接,此时请输入“yes”并按回车键,接着会要求输入服务器的root账号的密码,请输入root账号的密码后按回车,在输入root账号的密码时屏幕上不会有任何显示

ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.10
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.11

b)在node2服务器上执行以下三行命令,实现可以在执行命令的服务器上无密码SSH登录至node1服务器和node2服务器(注意:下述第二行命令中的192.168.1.10为node1服务器的IP地址,第三行命令中的192.168.1.11为node2服务器的IP地址,执行命令前需要根据实际情况指定。在执行第二及第三行命令时,会提示是否继续连接,此时请输入“yes”并按回车键,接着会要求输入服务器的root账号的密码,请输入root账号的密码后按回车,在输入root账号的密码时屏幕上不会有任何显示

ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.10
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.1.11

(2)执行安装

a)以root账户登录至node1服务器

b)在node1服务器上执行以下命令,解压行云管家安装包文件(注意:下述第二行命令中的cloudguanjia_cmp_install_v4.16_0227.tar.gz为行云管家安装包文件的文件名,执行命令前需要根据实际情况指定

cd /opt
tar zxvf cloudguanjia_cmp_install_v4.16_0227.tar.gz

c)在node1服务器上执行以下命令,进入行云管家安装包目录并安装(注意:下述第二行命令中的参数需要与前述准备的资源一致,其中192.168.1.1为默认网关IP地址,192.168.1.88为访问行云管家所使用的应用IP地址,192.168.1.10为node1服务器的IP地址,192.168.1.11为node2服务器的IP地址,eth0为应用访问IP地址将要设置于其上的网口名称,/dev/sdc为存储名称,执行命令前需要根据实际情况指定

cd /opt/cloudguanjia_cmp_install
./install.sh hadrbd 192.168.1.1 192.168.1.88 192.168.1.10 192.168.1.11 eth0 /dev/sdc

上述命令在执行时,会校验两台服务器的连通性(包括校验两台服务器间是否可以无密码登录)、安装包的正确性、各个IP地址的正确性、网口名称的正确性以及存储名称的正确性。

上述命令执行后,安装操作将在后台执行,安装操作日志位于/cloudbility_install_logs/cloudguanjia_install_xxxxxxxxxxxxxx.log ,日志也将在当前执行命令的终端窗口显示。

待上述命令执行完毕,即可完成SkybilityHA和行云管家的安装。

d)将有效的SkybilityHA许可文件(license)分别拷贝到node1服务器和node2服务器的 /opt/ha/lic/ 目录,完成SkybilityHA License放置。

e)在node1和node2服务器分别执行以下命令,启动SkybilityHA,并由SkybilityHA将行云管家启动起来。

/opt/ha/bin/hadaemons start

SkybilityHA管理控制台的访问地址为 http://node1_IP:9099 或 http://node2_IP:9099 ,用户名为 admin ,密码为 Abc@12345

SkybilityHA启动后,将会自动把行云管家启动起来,可以通过浏览器以 http://APP_IP 来访问行云管家。

请参考 行云管家管理控制台初始化配置 对行云管家进行初始化配置。

三、阿里云服务器EIP DRBD方式安装

安装前,请按下述要求(阿里云资源准备、阿里云资源列表、安装文件准备)进行环境准备;

3.1、阿里云资源准备

请参考 行云管家阿里云高可用部署资源准备指引 准备阿里云部署资源和环境。

3.2、阿里云资源列表(举例)

假设准备好的阿里云相关资源如下表(其中一台阿里云服务器简称为 node1 服务器,另一台阿里云服务器简称为 node2 服务器,):

资源 内容 用途描述
node1_IP 192.168.10.10 node1(节点1)的IP地址,将用作两个HA节点间的心跳IP地址
node2_IP 192.168.20.22 node2(节点2)的IP地址,将用作两个HA节点间的心跳IP地址
EIP(APP_IP) 120.79.176.117 访问行云管家所使用的IP地址,作为浮动IP地址由SkybilityHA配置于node1或node2上
AccessKey LTAIMA7gU9MRfh1k(举例 ) 您的阿里云账户AccessKey
Secret L2iLLuCqKlLRNEooGHbcw8WhnC3vWK(举例) 您的阿里云账户AccessKey所对应的Secret

3.3、安装文件准备

将以下文件拷贝至node1服务器的 /opt/ 目录;

(1)准备好SkybilityHA的ISO安装文件及其对应的md5sum文件:ha-x.x.x-x.x86_64.isoha-x.x.x-x.x86_64.iso.md5sum

(2)准备好最新的行云管家安装包文件及其对应的md5sum文件。

3.4、安装

安装过程为一键式安装,为实现一键式安装,需要在执行安装前做好两台服务器间的无密码登录,在安装完毕后,需手工放置SkybilityHA的有效license并启动SkybilityHA。

(1)做两台服务器间的无密码登录

a)在node1服务器上执行以下三行命令,实现可以在执行命令的服务器上无密码SSH登录至node1服务器和node2服务器(注意:下述第二行命令中的192.168.10.10为node1服务器的IP地址,第三行命令中的192.168.20.22为node2服务器的IP地址,执行命令前需要根据实际情况指定。在执行第二及第三行命令时,会提示是否继续连接,此时请输入“yes”并按回车键,接着会要求输入服务器的root账号的密码,请输入root账号的密码后按回车,在输入root账号的密码时屏幕上不会有任何显示

ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.10.10
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.20.22

b)在node2服务器上执行以下三行命令,实现可以在执行命令的服务器上无密码SSH登录至node1服务器和node2服务器(注意:下述第二行命令中的192.168.10.10为node1服务器的IP地址,第三行命令中的192.168.20.22为node2服务器的IP地址,执行命令前需要根据实际情况指定。在执行第二及第三行命令时,会提示是否继续连接,此时请输入“yes”并按回车键,接着会要求输入服务器的root账号的密码,请输入root账号的密码后按回车,在输入root账号的密码时屏幕上不会有任何显示

ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.10.10
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.20.22

(2)执行安装

a)以root账户登录至node1服务器

b)在node1服务器上执行以下两行命令,解压行云管家安装包文件(注意:下述第二行命令中的cloudguanjia_cmp_install_v4.16_0227.tar.gz为行云管家安装包文件的文件名,执行命令前需要根据实际情况指定

cd /opt
tar zxvf cloudguanjia_cmp_install_v4.16_0227.tar.gz

c)在node1服务器上执行以下两行命令,进入行云管家安装包目录并安装(注意:下述第二行命令中的参数需要与前述准备的资源一致,其中120.79.176.117是EIP,是访问行云管家所使用的应用IP地址,192.168.10.10为node1服务器的IP地址,192.168.20.22为node2服务器的IP地址,LTAIMA7gU9MRfh1k为您的阿里云账户AccessKey,L2iLLuCqKlLRNEooGHbcw8WhnC3vWK为您的阿里云账户AccessKey对应的secret,执行命令前需要根据实际情况指定

cd /opt/cloudguanjia_cmp_install
./install.sh haeip 120.79.176.117 192.168.10.10 192.168.20.22 LTAIMA7gU9MRfh1k L2iLLuCqKlLRNEooGHbcw8WhnC3vWK

上述命令在执行时,会校验两台服务器的连通性(包括校验两台服务器间是否可以无密码登录)、安装包的正确性、各个IP地址的正确性。

上述命令执行后,安装操作将在后台执行,安装操作日志位于/cloudbility_install_logs/cloudguanjia_install_xxxxxxxxxxxxxx.log ,日志也将在当前执行命令的终端窗口显示。

待上述命令执行完毕,即可完成SkybilityHA和行云管家的安装。

d)将有效的SkybilityHA许可文件(license)分别拷贝到node1服务器和node2服务器的 /opt/ha/lic/ 目录,完成SkybilityHA License放置。

e)在node1和node2服务器分别执行以下命令,启动SkybilityHA,并由SkybilityHA将行云管家启动起来。

/opt/ha/bin/hadaemons start

SkybilityHA管理控制台的访问地址为 http://node1_IP:9099 或 http://node2_IP:9099 ,用户名为 admin ,密码为 Abc@12345

SkybilityHA启动后,将会自动把行云管家启动起来,可以通过浏览器以 http://APP_IP 来访问行云管家。

请参考 行云管家管理控制台初始化配置 对行云管家进行初始化配置。